设计模式代码示例
前言： 对四人帮设计模式(Gamma, Helm, Johnson ＆ Vlissides 《Design Pattern》)的一点理解
设计模式将带来什么
1 一套通用的设计词汇
设计模式为设计者们交流讨论，书写文档以及探索各种不同设计提供一套通用的设计词汇。设计模式使你可以在比设计表示或编程语言更高的抽象级别上谈论一个系统，从而降低了其复杂度。设计模式提高了你的设计及你与同事讨论这些设计的层次
2 书写文档和学习的辅助手段
了解各设计模式可使你更容易理解已有的系统。大多数规模较大的面向对象系统都使用了这些设计模式。人们在学习面向对象编程时常常抱怨系统中继承的使用令人费解以及难于理解控制流程。这在很大程度上是由于他们未能解该系统中的设计模式．
3 现有方法的一种补充
设计模式展示了如何使用诸如对象、继承和多态等基本技术。它们也展示了如何以算法、行为、状态或者需生成的对象类型来将一个系统参数化。其适用性、效果和实现部分都会帮助指导你。所使用编程语言和类库也会影响设计，许多设计模式描述了这样的问题，这也是为什么我们称之为设计模式的原因。
4 重构的目标
开发可复用软件的一个问题是开发都常常不得不重新组织或重构软件系统。设计模式可以帮助重新组织一个设计，同时还能减少以后的重构工作。
以上观点摘自之GoF《设计模式》